說完字串之後接下來換另一個大寶貝-Number數字。
Number Type數字精確地說一共有18,437,736,874,454,810,627 (2^64 - 2^53 + 3)個值(跟最大精度的2^53-1是不同的東西),不像我們數學學的分類自然數、整數、有理數那些,Number只有分為兩類,一個是使用雙精度浮點數儲存的number,另一個則是可以處理超出雙精度浮點數精度範圍bigInt,他們都是基本型別的一種,這邊先以介紹Number為主。
顧名思義即是將value的型別type轉換成Number。
各種型別的轉換結果:
數字跟字串不一樣,不會自動物件化的特性,
所有Properties跟method都要透過Object(Number)去執行,
像是這樣Object(Number).constructor.Properties/method()
然而Object(Number)有些Properties/method()不影響結果
所以調用不影響結果的Properties跟method都是從Number Constructor(數字的原型結構)的使用,也就是Number開頭
數字的Properties都是數字的原型結構的內容,
Number.EPSILON
Number.isFinite ( number )
Number.isInteger ( number )
Number.isNaN ( number )
Number.isSafeInteger ( number )
Number.MAX_SAFE_INTEGER
Number.MAX_VALUE
Number.MIN_SAFE_INTEGER
Number.MIN_VALUE
Number.NaN
Number.NEGATIVE_INFINITY
Number.parseFloat ( string )
Number.parseInt ( string, radix )
Number.POSITIVE_INFINITY
Number.prototype
注意:不能直接用數字使用,可以直接以原型或是透過變數去呼叫
Number.prototype.constructor
Number.prototype.toExponential ( fractionDigits )
Number.prototype.toFixed ( fractionDigits )
Number.prototype.toLocaleString ( [ reserved1 [ , reserved2 ] ] )
Number.prototype.toPrecision ( precision )
Number.prototype.toString ( [ radix ] )
Number.prototype.valueOf ( )
原本想跟字串一樣分Properties(屬性)跟method(方法)後來看了ECMA覺得還是依Prototype跟Constructor去分類,但是看完這些是不是感覺還有東西被遺漏了,沒錯Number的相關用法除了Number之外還有一個Math,關於Math的東西我們明天再談吧!
參考資料